1. Technical Field
The invention relates to a system and method for producing a set of synchronized binary signals from a multi-channel serial signal, and, more particularly, for receiving multi-channel serial signals, correcting for skew in the sampling of each serial signal, and synchronizing binary characters in a channel with their counterparts in other channels.
2. Background and Objects of the Invention
One problem in sampling a serial data stream is the problem of clock skew. Clock skew occurs when a recovered clock signal, whose phase is used to determine the time at which to sample the serial signal, is out of phase with the serial signal. This can occur, for example, if the wire or other medium carrying the clock signal is of a different length or density from the wire or other medium carrying the serial data signal.
One way of dealing with a skew condition is to oversample the received serial signal; that it, so sample the received signal more than one time during the expected duration of each bit signal. By selecting multiple samples, a skew condition can be detected and, by using the values captured in the majority of the oversamples, and ignoring minority spurious values captured as a result of skew. A problem with this approach, however, is that it fails for large skews, where a majority of oversamples may actually be of an adjacent transmitted bit rather than of the intended bit. This is particularly likely to occur when a small skew has been propagated over a length of time, resulting in a large accumulated skew. It is therefore desirable to have a means of detecting occurrences of skew and adjusting oversampling to compensate for the observed skew and eliminate the skew in subsequent oversamples.
It is further desirable to be have a means of combining multiple serial signals into a single composite signal, adjusting for any variations in arrival time of each of the serial signals.